#include <stdio.h>
#include <stdlib.h>
#include <assert.h>
#include <setjmp.h>

void quit(jmp_buf j)
{
    printf("begin quit...\n");
    longjmp(j, 1);
    printf("this will not display.\n");
}

int main(int argc, char *argv[])
{
    jmp_buf j;
    int i = setjmp(j);
    printf("i = %d\n", i);
    if(i == 0)
    {
        quit(j);
    }
    else
    {
        assert(i != 0);
    }

    return 0;
}
